package com.zwh.config;

import com.zwh.entity.Monkey;
import com.zwh.entity.Monkey1;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;

@Configuration
public class BeanConfig {
    @Bean
    public Monkey monkey() {
        return new Monkey(20);
    }

    @Bean("monkey2")
    public Monkey monkey2() {
        return new Monkey(30);
    }

    @Bean
    @Primary //当存在同一类型的bean，其中有一个bean创建的时候加上了@Primary注解后，在注入bean的时候，会优先选择这个被@Primary修饰的bean。
    public Monkey monkey3(){
        return new Monkey(40);
    }


    //两个相同名称的bean只会注入第一个加载进来在bean，所以这个bean不会被注入到容器里面
    @Bean("monkey2")
    public Monkey1 monkey4() {
        return new Monkey1(30);
    }

}
